package com.ruoyi.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 合同列表对象 tb_contract
 * 
 * @author ruoyi
 * @date 2024-05-16
 */
public class TbContract extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 合同主键 */
    private Long id;

    /** 合同编号 */
    @Excel(name = "合同编号")
    private String contractNum;

    /** 合同名称 */
    @Excel(name = "合同名称")
    private String contractName;

    /** 电子合同地址 */
    @Excel(name = "电子合同地址")
    private String contractUrl;

    /** 房东外键 */
    @Excel(name = "房东外键")
    private Long customer1Id;

    /** 用户外键 */
    @Excel(name = "用户外键")
    private Long customer2Id;

    /** 合同金额 */
    @Excel(name = "合同金额")
    private BigDecimal contractAmount;

    /** 生效日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生效日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date takeTime;

    /** 合同状态外键 */
    @Excel(name = "合同状态外键")
    private Long statusId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setContractNum(String contractNum) 
    {
        this.contractNum = contractNum;
    }

    public String getContractNum() 
    {
        return contractNum;
    }
    public void setContractName(String contractName) 
    {
        this.contractName = contractName;
    }

    public String getContractName() 
    {
        return contractName;
    }
    public void setContractUrl(String contractUrl) 
    {
        this.contractUrl = contractUrl;
    }

    public String getContractUrl() 
    {
        return contractUrl;
    }
    public void setCustomer1Id(Long customer1Id) 
    {
        this.customer1Id = customer1Id;
    }

    public Long getCustomer1Id() 
    {
        return customer1Id;
    }
    public void setCustomer2Id(Long customer2Id) 
    {
        this.customer2Id = customer2Id;
    }

    public Long getCustomer2Id() 
    {
        return customer2Id;
    }
    public void setContractAmount(BigDecimal contractAmount) 
    {
        this.contractAmount = contractAmount;
    }

    public BigDecimal getContractAmount() 
    {
        return contractAmount;
    }
    public void setTakeTime(Date takeTime) 
    {
        this.takeTime = takeTime;
    }

    public Date getTakeTime() 
    {
        return takeTime;
    }
    public void setStatusId(Long statusId) 
    {
        this.statusId = statusId;
    }

    public Long getStatusId() 
    {
        return statusId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("contractNum", getContractNum())
            .append("contractName", getContractName())
            .append("contractUrl", getContractUrl())
            .append("customer1Id", getCustomer1Id())
            .append("customer2Id", getCustomer2Id())
            .append("contractAmount", getContractAmount())
            .append("createTime", getCreateTime())
            .append("takeTime", getTakeTime())
            .append("updateTime", getUpdateTime())
            .append("statusId", getStatusId())
            .toString();
    }
}
